package DynamicAgent;

/**
 * @Author Big_white
 * @Date 2021/11/13
 */
public class Client {
    public static void main(String[] args) {
        //创建一个目标对象
        ITeacherDao target = new TeacherDao();
        //给目标对象，创建代理对象,可以转成ITeacherDao
        ITeacherDao proxyInstance =(ITeacherDao) new ProxyFactory(target).getProxyInstance();
        //proxyInstance=class com.sun.proxy.$Proxy0内存中动态生成了代理对象
        System.out.println("proxyInstance="+proxyInstance.getClass());
        //通过代理对象，调用目标对象方法
        proxyInstance.teach();
    }
}
